package org.hq.jni;

public class VideoUtils {
    static {
        // 加载位于项目根目录下的lib目录中的动态库
        System.loadLibrary("videoutils");
    }
    /**
     * 获取视频播放时间
     *
     * @param inputFile 输入视频路径
     * @return 成功返回视频播放时间长度 失败返回 -1
     */
    public static native int getDuration(Imessage mes,String inputFile);
    /**
     * 下载视频文件
     * @param mes        消息对象
     * @param inputFile  输入视频文件路径
     * @param outputFile 输出视频文件路径
     * @return 成功返回 0，失败返回 -1
     */
    public static native int downloadVideo(Imessage mes,String inputFile,String outputFile);
    /**
     * 剪切视频文件
     *
     * @param mes        消息对象
     * @param inputFile  输入视频文件路径
     * @param outputFile 输出视频文件路径
     * @param start      开始时间（秒）
     * @param end        结束时间（秒）
     * @return 成功返回 0，失败返回 -1
     */
    public static native int cutlVideo(Imessage mes, String inputFile, String outputFile,int start,int end);
    /**
     * 将视频文件转换为一系列的 JPG 图片
     *
     * @param mes        消息对象
     * @param inputFile  输入视频文件路径
     * @param outputFile 输出图片文件路径
     * @param imageSize  图片尺寸，格式为 "宽度x高度"
     * @return 成功返回 0，失败返回 -1
     */
    public static native int VideoToJpg(Imessage mes, String inputFile, String outputFile,String imageSize);
    /**
     * 将视频文件转换为一系列的 JPG 图片
     *
     * @param mes        消息对象
     * @param inputFile  输入视频文件路径
     * @param outputFile 输出图片文件路径
     * @param imageSize  图片尺寸，格式为 "宽度x高度"
     * @param count      图片数量
     * @return 成功返回 0，失败返回 -1
     */
    public static native int VideoToGit(Imessage mes, String inputFile, String outputFile,String imageSize, int count);


}
